// 用户信息相关接口
import { get, post, put } from './httpIntercept'

/**
 * 以登录接口为例
 * export const login = p => get('/user/login', p);
 *
 * login ---------- 接口名称
 * p -------------- 传参，若需要在url中拼接其他信息，传参可以改为(p, other)
 * get ------------ 接口调用的方法，来自 http.js 中封装好的四个axios方法 get/post/put/axiosDelete
 * '/user/login' -- 接口url，若需要在url中拼接其他信息：
 *                  首先需要在传参处改为(p, other1, other2)
 *                  然后将url改为`/user/${other1}/login/${other2}`
 * p -------------- 传递给 get/post/put/axiosDelete 中的查询参数/请求体
 *
 *
 *
 * 除此之外，POST 请求支持请求体格式为 FormData，那么就需要多传递一个参数，true，如下示例：
 * export const example = p => post('/test/example', p, true);
 */


//获取验证码
export const getCaptcha = (p) => get('/captchaImage', p)
// 用户登录
export const login = (p) => post('/login', p)

// 退出方法
export const logout = (p) => post('/logout', p);

// 获取登录状态及用户信息
export const checkUserLoginInfo = (p) => get('/getInfo', p)
// 获取登录状态及用户信息
export const getUserInfo = (p) => get('/getInfo', p)
// 获取登录状态及用户信息
export const getInfo = (p) => get('/getInfo', p)

//获取路由
export const getRouters = (p) => get('/getRouters', p)

// 用户注册
export const addUser = (p) => post('/register', p)
//修改密码
export const updatePassword = (p,h) => put('/system/user/profile/updatePwd', p, h)


export const upload = (p) => post('/system/oss/upload', p)
 

//流程相关 
//发起流程
export const precessStart = (definitionId, data) => post(`/workflow/process/start/${definitionId}`, data)
//待办流程（等待当前用户处理的流程）
// pageNum:1, pageSize:10
export const getTodoList = (query) => get(`/workflow/process/todoList`, query)
//我的流程（正在办）
// pageNum:1, pageSize:10
export const getOwnList = (query) => get(`/workflow/process/ownList`, query)
//我的流程（已办）
// pageNum:1, pageSize:10
export const getFinishedList = (query) => get(`/workflow/process/finishedList`, query)
//获取待办流程详情（用于展示填写的内容|从列表中获取）
// procInsId:"ae9d5ebc-c71e-11ef-bf1a-18c04d99de82",
// taskId: "ae9d85d9-c71e-11ef-bf1a-18c04d99de82"
export const getProcessDetail = (query) => get(`/workflow/process/detail`, query)

//审批（procInsId、taskId从待办获取）
// "comment": "同意", //审批意见
// "procInsId": "ae9d5ebc-c71e-11ef-bf1a-18c04d99de82",  //流程实例id
// "taskId": "ae9d85d9-c71e-11ef-bf1a-18c04d99de82",
// "copyUserIds": "", //抄送人id
// "vars": "",
// "targetKey": "", //结点
// "variables": {} //运维人员审批时填写的表单 格式与发起时一致
export const processComplete = (data) => post(`/workflow/task/complete`, data)

//退回列表（procInsId、taskId从待办获取）| 选择退回到哪一步
// "comment": "同意", //审批意见
// "procInsId": "ae9d5ebc-c71e-11ef-bf1a-18c04d99de82",  //流程实例id
// "taskId": "ae9d85d9-c71e-11ef-bf1a-18c04d99de82",
// "copyUserIds": "", //抄送人id
// "vars": "",
// "targetKey": "" //结点
export const processReturnList = (data) => post(`/workflow/task/returnList`, data)

//退回（procInsId、taskId从待办获取）
// "comment": "同意", //审批意见
// "procInsId": "ae9d5ebc-c71e-11ef-bf1a-18c04d99de82",  //流程实例id
// "taskId": "ae9d85d9-c71e-11ef-bf1a-18c04d99de82",
// "copyUserIds": "", //抄送人id
// "vars": "",
// "targetKey": "Activity_1fqubt4", //结点 从退回列表获取
export const processReturn = (data) => post(`/workflow/task/return`, data)

// 拒绝（出现提示|流程终止是否仅需）（procInsId、taskId从待办获取）
// "comment": "同意", //审批意见
// "procInsId": "ae9d5ebc-c71e-11ef-bf1a-18c04d99de82",  //流程实例id
// "taskId": "ae9d85d9-c71e-11ef-bf1a-18c04d99de82",
// "copyUserIds": "", //抄送人id
// "vars": "",
// "targetKey": "" //结点
export const processReject = (data) => post(`/workflow/task/reject`, data)
